#ifndef FOREST_H
#define FOREST_H

#include <vector>
#include <list>
#include <string>

#include "node.h"

using namespace std;

class forest {
   
  friend class parser;
  friend class node;

 private:
  unsigned int ForestId;
  string Cat;
  class features *Sem;
  list<class node *> Nodes;
  bool Seen;
  
 public:
  forest (string, class features*);
  //
  class node *addNode(string span);
  void notSeen();
  void print(ostream&);
  void eval(string);
};

#endif // FOREST_H
